21/01/2024 - 27/01/2024

22/01/2024 11:59

I asked for some help on reddit here:
https://www.reddit.com/r/FPGA/comments/1993seu/board_disappears_from_lspci_after_programming/

following:

You have to trigger the FPGA to load your bitstream from the config flash, either by power cycling the board or by sending the right JTAG command (e.g. by right-clicking on the FPGA in Hardware Manager and selecting "Boot from configuration memory").
You'll also need to either reboot the host computer to trigger PCIe device enumeration, or use these commands:

echo 1 > /sys/bus/pci/devices/0000\:05\:00.0/remove
echo 1 > /sys/bus/pci/rescan
echo 1 > /sys/bus/pci/devices/0000\:05\:00.0/remove
echo 1 > /sys/bus/pci/rescan

Did not seem to help on the newest dektop running linux mint. I.e. the board was still not found after a rescan. I had the starting guide (https://numato.com/kb/getting-started-with-pci-express-on-nereid/) bitstream in the flash memory. The same one that works without doing anything fancy on fe01 running CentOS7.

Trying this fix for the dma guide's flash memory bitstream (https://numato.com/kb/create-pcie-dma-example-design-for-nereid/) also fails on fe01 runnign CentOS7.


22/01/2024 13:06

Tried following the "simple" DDR3 guide:
https://numato.com/kb/simple-ddr3-interfacing-on-nereid-using-xilinx-mig-7/

There's a point in step 6 where it says to select "MT8KTF51264HZ-1G9" as the base part. However, that does not exist in the dropdown menu reached by following the previous steps. I just left that dropdown as the default and continued through the guide, but unsuprisingly was unable to generate a bitstream.


24/01/2024 21:47

I tried following this guide: https://numato.com/kb/create-pcie-dma-example-design-for-nereid/

Once again. This time I ignored the extra block in the image and followed the guide word for word otherwise. The same result as before. I cannot see the device in either our newest desktop or fe01.

24/01/2024 22:19

Tried installing Xilinx dma_ip_drivers by following this readme
https://github.com/Xilinx/dma_ip_drivers/tree/master/XDMA/linux-kernel
But I get this error when trying the first make:

[root@fe01 xdma]# make install
Makefile:17: XVC_FLAGS: .
make -C /lib/modules/3.10.0-1160.76.1.el7.x86_64/build M=/root/dma_ip_drivers/XDMA/linux-kernel/xdma modules
make[1]: Entering directory `/usr/src/kernels/3.10.0-1160.76.1.el7.x86_64'
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/Makefile:17: XVC_FLAGS: .
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_engine_stop.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_service_shutdown.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: user_irq_service.isra.0.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_isr.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_user_irq.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_transfer_completion.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: irq_teardown.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_status_read.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_start.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_service.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_service_work.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_channel_irq.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_init_request.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: transfer_queue.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_destroy.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: remove_engines.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: get_perf_stats.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_service_poll.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_cyclic_stop.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_xfer_aperture.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_xfer_submit.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_xfer_completion.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_xfer_submit_nowait.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_performance_submit.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_device_close.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_device_offline.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_device_online.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_device_restart.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_user_isr_register.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_user_isr_enable.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_user_isr_disable.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: create_xcdev.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: destroy_xcdev.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: xcdev_check.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: char_open.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: char_close.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: xpdev_destroy_interfaces.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: xpdev_create_interfaces.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: xdma_cdev_init.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_ctrl.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_ctrl.o: warning: objtool: char_ctrl_write.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_ctrl.o: warning: objtool: char_ctrl_ioctl.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_events.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_events.o: warning: objtool: char_events_poll.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_events.o: warning: objtool: char_events_read.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: char_sgdma_unmap_user_buf.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: async_io_handler.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: check_transfer_align.constprop.0.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: char_sgdma_map_user_buf_to_sgl.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: ioctl_do_aperture_dma.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: cdev_aio_write.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: cdev_aio_read.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: char_sgdma_read_write.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: char_sgdma_ioctl.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_xvc.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_xvc.o: warning: objtool: xvc_ioctl.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_bypass.o
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o: warning: objtool: xdma_slot_reset.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o: warning: objtool: xdma_error_detected.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o: warning: objtool: probe_one.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o: warning: objtool: remove_one.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_thread.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_thread.o: warning: objtool: xdma_kthread_start.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_thread.o: warning: objtool: xdma_kthread_stop.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_thread.o: warning: objtool: xdma_threads_create.cold()+0x0: frame pointer state mismatch
  LD [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma.o
  Building modules, stage 2.
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/Makefile:17: XVC_FLAGS: .
  MODPOST 1 modules
  CC      /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma.mod.o
  LD [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma.ko
make[1]: Leaving directory `/usr/src/kernels/3.10.0-1160.76.1.el7.x86_64'
installing kernel modules to /lib/modules/3.10.0-1160.76.1.el7.x86_64/xdma ...
removed ‘/lib/modules/3.10.0-1160.76.1.el7.x86_64/xdma/xdma.ko’
‘xdma.ko’ -> ‘/lib/modules/3.10.0-1160.76.1.el7.x86_64/xdma/xdma.ko’
depmod: ERROR: fstatat(4, nvidia-peermem.ko.xz): No such file or directory
[root@fe01 xdma]# make install
Makefile:17: XVC_FLAGS: .
make -C /lib/modules/3.10.0-1160.76.1.el7.x86_64/build M=/root/dma_ip_drivers/XDMA/linux-kernel/xdma modules
make[1]: Entering directory `/usr/src/kernels/3.10.0-1160.76.1.el7.x86_64'
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/Makefile:17: XVC_FLAGS: .
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_engine_stop.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_service_shutdown.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: user_irq_service.isra.0.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_isr.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_user_irq.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_transfer_completion.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: irq_teardown.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_status_read.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_start.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_service.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_service_work.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_channel_irq.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_init_request.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: transfer_queue.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_destroy.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: remove_engines.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: get_perf_stats.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_service_poll.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: engine_cyclic_stop.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_xfer_aperture.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_xfer_submit.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_xfer_completion.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_xfer_submit_nowait.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_performance_submit.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_device_close.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_device_offline.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_device_online.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_device_restart.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_user_isr_register.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_user_isr_enable.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/libxdma.o: warning: objtool: xdma_user_isr_disable.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: create_xcdev.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: destroy_xcdev.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: xcdev_check.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: char_open.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: char_close.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: xpdev_destroy_interfaces.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: xpdev_create_interfaces.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_cdev.o: warning: objtool: xdma_cdev_init.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_ctrl.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_ctrl.o: warning: objtool: char_ctrl_write.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_ctrl.o: warning: objtool: char_ctrl_ioctl.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_events.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_events.o: warning: objtool: char_events_poll.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_events.o: warning: objtool: char_events_read.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: char_sgdma_unmap_user_buf.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: async_io_handler.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: check_transfer_align.constprop.0.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: char_sgdma_map_user_buf_to_sgl.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: ioctl_do_aperture_dma.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: cdev_aio_write.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: cdev_aio_read.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: char_sgdma_read_write.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_sgdma.o: warning: objtool: char_sgdma_ioctl.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_xvc.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_xvc.o: warning: objtool: xvc_ioctl.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/cdev_bypass.o
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o: warning: objtool: xdma_slot_reset.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o: warning: objtool: xdma_error_detected.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o: warning: objtool: probe_one.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_mod.o: warning: objtool: remove_one.cold()+0x0: frame pointer state mismatch
  CC [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_thread.o
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_thread.o: warning: objtool: xdma_kthread_start.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_thread.o: warning: objtool: xdma_kthread_stop.cold()+0x0: frame pointer state mismatch
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma_thread.o: warning: objtool: xdma_threads_create.cold()+0x0: frame pointer state mismatch
  LD [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma.o
  Building modules, stage 2.
/root/dma_ip_drivers/XDMA/linux-kernel/xdma/Makefile:17: XVC_FLAGS: .
  MODPOST 1 modules
  CC      /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma.mod.o
  LD [M]  /root/dma_ip_drivers/XDMA/linux-kernel/xdma/xdma.ko
make[1]: Leaving directory `/usr/src/kernels/3.10.0-1160.76.1.el7.x86_64'
installing kernel modules to /lib/modules/3.10.0-1160.76.1.el7.x86_64/xdma ...
removed ‘/lib/modules/3.10.0-1160.76.1.el7.x86_64/xdma/xdma.ko’
‘xdma.ko’ -> ‘/lib/modules/3.10.0-1160.76.1.el7.x86_64/xdma/xdma.ko’
depmod: ERROR: fstatat(4, nvidia-peermem.ko.xz): No such file or directory

Similar issue from 2.5 years ago with no answer:
https://support.xilinx.com/s/question/0D52E00006hpREWSA2/qdmaipdriver-depmod-error-fstatat4-xclmgmtkoxz-depmod-error-fstatat4-xoclkoxz?language=en_US

24/01/2024 22:43

I took a look at how much code is behind a "Simple" FPGA PCIe Interface and...
1e93c225d9ef165f090e82b7232a8552.png

Each of the files is hundreds of lines of code. The screenshot contains about half the files. It is complete unfeasible to write this on my own.


26/01/2024 19:26

Tried to just use the PCIe parts of the DMA project, but face the same issues as before (device not showing up with lspci).

What I did was:

  1. Created a block diagram
  2. Went to the "board" section (these development board have automatically configured IP block)
  3. Added the pcie block (which automatically added the pcie dma interface block)
  4. Added no other block, hit run blocka automation and run connection automation
  5. In sources, I made and hdl wrapper for the block diagarm
  6. Then I right clicked generate bit stream to check the .bin file box to generate a bin file
  7. Then I generated a bitstream
  8. After the bitstream was generated, I auto connected to the board
  9. I right cliicked the xc7.... whatever to create a new configuration memory
  10. Micron, 128, spi, clicked the one with L
  11. Programmed with the generated .bin file located in the {projectname}.runs

Programming was sucessful, moved the card to fe01, but was not able to see the board with lspci.

I didn't explitly save the block diagram I made, so there's a chance that messed things up; though I find it doubtful since it took so long to synthesize and all that.


26/01/2024 20:33

Trying to follow this guide:
https://numato.com/kb/vivado-design-suite-create-microblaze-based-design-using-ip-integrator-with-nereid-kintex-7-pci-express-development-board/

I fail at STep 14 because the guide is outdared. SDK was removed from Vivado in 2019, it now uses Vitis. Trying to lanch Vitis IDE from the Tools menu in Vivado fails for some reason. Though, I should be able to open it somehow (maybe I don't have it installed on my laptop? Hard to tell.)